package com.tengju.bff.interfaces.manage.star.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.tengju.bff.interfaces.shared.MobileVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

@Data
@ApiModel(value = "StarAuditListInfoVO", description = "星级审批列表明细对象")
public class StarAuditRecordVO implements Serializable {

    /** */
    private static final long serialVersionUID = 1L;
    
    @ApiModelProperty("主键id")
    private Long id;
    
    @ApiModelProperty("用户主键id")
    private Long userId;
    
    @ApiModelProperty("用户编号idCode")
    private Long idCode;

    @ApiModelProperty("用户手机号码")
    private MobileVO mobile;
    
    @ApiModelProperty("用户昵称")
    private String nickName;
    
    @ApiModelProperty("当前星级")
    private Integer originStarLevel;

    @ApiModelProperty("当前星级类型")
    private Integer originStarRole;
    
    @ApiModelProperty("目标星级")
    private Integer targetStarLevel;

    @ApiModelProperty("目标星级类型")
    private Integer targetStarRole;
    
    @ApiModelProperty("审核状态：0：资质审核中，10:审核通过 20:审核拒绝")
    private Integer auditStatus;
    
    @ApiModelProperty("邀请类型（1：自动  2：手动）")
    private Byte handleType;
    
    @ApiModelProperty("黑名单标志（true代表是，false代表否）")
    private Boolean blackListFlag;

    @ApiModelProperty("审核描述")
    private String auditDesc;

    @ApiModelProperty(value = "签约状态 1：已邀约 2：问卷完成 3：待审核 4：审核拒绝 5：审核完成 6：考试完成 7：签约完成 8：结束")
    private Integer signStatus;
    
    @ApiModelProperty("操作员")
    private String auditBy;
    
    @ApiModelProperty("操作时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date auditTime;

    @ApiModelProperty("签约状态(10:邀约已发送，20：调查问卷完成 30：支付身份认证完成，40：数据审核完成，45: 考试完成，50：电子签约完成，60：结束)")
    private Integer signStep;

    @ApiModelProperty("签约状态描述(10:邀约已发送，20：调查问卷完成 30：支付身份认证完成，40：数据审核完成，45: 考试完成，50：电子签约完成，60：结束)")
    private String signStepDesc;
}
